package org.summerframework.component.security.permissions.service.dto;

import org.summerframework.core.base.dto.BaseDTO;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.List;

/**
 * user_permissions_role_rel
 *
 * @author
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class UserPermissionsRoleRelDTO extends BaseDTO {
    /**
     * 角色id
     */
    @ApiModelProperty(value = "角色id", required = true)
    private Long roleId;

    @ApiModelProperty(value = "", required = true)
    private String roleCode;

    @ApiModelProperty(value = "", required = true)
    private String roleName;

    /**
     * 权限id
     */
    @ApiModelProperty(value = "权限id", required = true)
    private Long permissionsId;

    @ApiModelProperty(value = "", required = true)
    private String permissionsCode;

    @ApiModelProperty(value = "", required = true)
    private String permissionsName;

    @ApiModelProperty(value = "", required = true)
    private Long parentId;

    @ApiModelProperty(value = "", required = true)
    private Integer type;

    @ApiModelProperty(value = "", required = true)
    private Integer status;

    @ApiModelProperty(value = "")
    private String icon;

    @ApiModelProperty(value = "", required = true)
    private Integer isSystem;

    @ApiModelProperty(value = "")
    private Integer sortIndex;

    @ApiModelProperty(value = "")
    private String url;

    @ApiModelProperty(value = "角色类型")
    public Integer roleType;

    @ApiModelProperty(value = "角色类型关联的id")
    public Long roleRelId;

    private Boolean leaf;

    private List<UserPermissionsRoleRelDTO> child;
}
